package Aula10;

import java.util.Random;

public class QuicksortImpl implements Quicksort{
	
	public static final int REPETIDO= 1;
    public static final int MEDIA = 2;
    
    public int [] quicksort(int metodo, int [] vetor){
    	if (metodo == MEDIA){
    		new QuickMedia().sort(vetor);
    	}else{
    		new QuickRepetido().sort(vetor);
    	}
    	
    	return vetor;
    }
    
    public int [] gerarVetor(int tamanho){
    	if (tamanho > 1000){
			System.out.println("Coloque um numero menor que 1000");
			return null;
		} else{
			int[] vetor = new int[tamanho];
			for (int i = 0; i <= tamanho - 1; i++) {
				vetor[i] = new Random().nextInt();
			}
			return vetor;
		}
    }
    
    public static void main(String[] args) {
        Quicksort q = new QuicksortImpl();
        
        int [] vetorDesordenado = {4,1,4,-9,2,1,3};

        int [] vetorOrdenado1 = q.quicksort(Quicksort.MEDIA, vetorDesordenado);
        
        for (int i=0; i< 7; i++)
            System.out.print(vetorOrdenado1[i] + " ");
        
        System.out.println("");
        
        vetorDesordenado = q.gerarVetor(10);
        int [] vetorOrdenado2 = q.quicksort(Quicksort.REPETIDO, vetorDesordenado);
        
    }
}
